/* Copyright (c) 2004-2024 Peigen.info. All rights reserved. */

package info.peigen.hotpot.component.schedule.facade.command;

import info.peigen.hotpot.component.schedule.facade.command.order.ScheduleNodeCreateOrder;
import info.peigen.hotpot.component.schedule.facade.command.order.ScheduleNodeDeleteOrder;
import info.peigen.hotpot.component.schedule.facade.command.order.ScheduleNodeEditOrder;
import info.peigen.hotpot.component.schedule.facade.command.result.ScheduleNodeCreateResult;
import info.peigen.hotpot.component.schedule.facade.command.result.ScheduleNodeDeleteResult;
import info.peigen.hotpot.component.schedule.facade.command.result.ScheduleNodeEditResult;

/**
 * <b>(ScheduleNodeServiceFacade)</b>
 *
 * @author Peigen
 * @version 1.0.0
 * @since 2022/6/18
 */
public interface ScheduleNodeServiceFacade {
    /**
     * 创建新节点
     *
     * @param order CreateScheduleNodeOrder
     *
     * @return CreateScheduleNodeResult
     */
    ScheduleNodeCreateResult create(ScheduleNodeCreateOrder order);

    /**
     * 编辑节点
     *
     * @param order EditScheduleNodeOrder
     *
     * @return EditScheduleNodeResult
     */
    ScheduleNodeEditResult edit(ScheduleNodeEditOrder order);

    /**
     * 删除节点
     *
     * @param order ScheduleNodeDeleteOrder
     *
     * @return ScheduleNodeDeleteResult
     */
    ScheduleNodeDeleteResult delete(ScheduleNodeDeleteOrder order);

}